package com.internetCafes.spms.web.tenant.dao;

import com.baomidou.mybatisplus.annotation.SqlParser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.internetCafes.spms.core.annotation.NoTentant;
import com.internetCafes.spms.web.tenant.model.TenantDeptInfoPlus;
import com.internetCafes.spms.web.tenant.model.podo.TenantDeptInfoPlusDo;
import com.internetCafes.spms.web.tenant.model.podo.TenantDeptInfoPlusPo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 企业部门mapper管理
 *
 * @author Zj 2021/12/8 15:07
 */
@Mapper
public interface TenantDeptInfoPlusMapper extends BaseMapper<TenantDeptInfoPlus> {

    /**
     * 企业部门人员数量统计
     *
     * @param tenantId 企业id
     * @return 企业人员数量统计
     */
    @NoTentant
    List<TenantDeptInfoPlusPo> countDeptMemberAmountByTenantId(@Param("tenantId") Long tenantId);

    /**
     * 部门信息列表
     *
     * @param deptInfoPlusDo 请求参数
     * @return 部门列表
     */
    @NoTentant
    List<TenantDeptInfoPlusPo> listPoNoTenantId(@Param("deptInfoPlusDo") TenantDeptInfoPlusDo deptInfoPlusDo);

    /**
     * 获取部门列表情况
     *
     * @param deptInfoPlusDo 请求参数
     * @return 部门列表
     */
    @SqlParser(filter = true)
    @NoTentant
    List<TenantDeptInfoPlusPo> deptList(@Param("deptInfoPlusDo") TenantDeptInfoPlusDo deptInfoPlusDo);
}
